/*
 *                        .::::.
 *                      .::::::::.
 *                     :::::::::::
 *                  ..:::::::::::'
 *               '::::::::::::'
 *                 .::::::::::
 *            '::::::::::::::..
 *                 ..::::::::::::.
 *               ``::::::::::::::::
 *                ::::``:::::::::'        .:::.
 *               ::::'   ':::::'       .::::::::.
 *             .::::'      ::::     .:::::::'::::.
 *            .:::'       :::::  .:::::::::' ':::::.
 *           .::'        :::::.:::::::::'      ':::::.
 *          .::'         ::::::::::::::'         ``::::.
 *      ...:::           ::::::::::::'              ``::.
 *     ````':.          ':::::::::'                  ::::..
 *                        '.:::::'                    ':'````..
 *
 * @Author: byx
 * @Date: 2022-10-24 21:05:46
 * @LastEditors: byx
 * @LastEditTime: 2022-10-24 22:10:33
 * @version: 1.0
 * @Descripttion: wwww.byx1024.top
 */
import Mock from 'mockjs'
import qs from 'qs'

// mock的配置
Mock.setup({
  // 随机延时500-1000毫秒
  timeout: '500-1000'
})

// 拦截请求接口  /my/test
// 第一个参数：url，使用正则去匹配（接口地址路径规则，需要匹配到它）
// 第二个参数：请求方式
// 第三个参数：生成数据的函数（返回数据/函数返回数据）
Mock.mock(/\/my\/test/, 'get', () => {
  // return { msg: '请求测试接口成功', result: [] }

  // 随机数据逻辑 目标：5条数据  [{id:'',name:''},...]
  const arr = []
  for (let i = 0; i < 5; i++) {
    // arr.push(Mock.mock('@id'))
    arr.push(
      Mock.mock({
        id: '@id',
        name: '@cname'
      })
    )
  }
  return { msg: 'mockjs获取数据成功', result: arr }
})

// 模拟 我的收藏
Mock.mock(/\/member\/collect/, 'get', (config) => {
  console.log(config.url)
  // console.log(config.url.split('?'))
  // 字符串split分割，两个都在一个数组里，取第二个即可
  const queryString = config.url.split('?')[1]
  console.log(queryString)
  const queryObject = qs.parse(queryString)
  const items = []
  for (let i = 0; i < +queryObject.pageSize; i++) {
    items.push(
      Mock.mock({
        id: '@id',
        name: '@ctitle(10,20)',
        desc: '@ctitle(4,10)',
        price: '@float(100,200,2,2)',
        // http://zhoushugang.gitee.io/erabbit-client-pc-static/uploads/clothes_goods_7.jpg
        picture: `http://zhoushugang.gitee.io/erabbit-client-pc-static/uploads/clothes_goods_${Mock.mock('@integer(1,8)')}.jpg`
      })
    )
  }
  return {
    msg: '获取收藏商品成功',
    result: {
      counts: 35,
      pageSize: +queryObject.pageSize,
      page: +queryObject.page,
      items
    }
  }
})
